<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>函数</title>
    <script>
        /*
        ******************* ***********************函数声明************************************
         函数也是一个对象
         可以封装一些功能（代码），在需要的时候可以执行这些功能（代码）
         函数可以保存一些代码在需要的时候调用
                          1.创建对象的方式创建函数
         这种方式很少使用:
         var fun =new Function(console.log("Hello 这是我的第一个函数"););
         */
        /*调用函数
        fun();
        函数具有对象的所有属性
        fun.hello="你好";
        console.log(fun.hello);
        */
        /*              2.使用函数声明来创建一个函数
        语法：
             function 函数名(形参1，形参2....形参N){
             语句....
             }
         */
        function fun2(){
            console.log("这是我的第二个函数");
        }
        /*
                        3.使用函数表达式来创建一个函数
         语法：
             var 函数名=function(形参1，形参2....形参N){
             语句...
             }
         */
        var fun3 =function (){
            console.log("我是匿名函数");
        }
        /*                    形参
        可以在函数的（）中来指定一个或多个形参
        在调用函数时，可以在（）中指定实参
        实参将会赋值给函数中对应的形参
        调用函数时不会检查实参的类型,也不会检查实参的数量；
        多余的实参不会被赋值
        eg：  sum（123，“hello”,true,null）;
         */
        /*                   返回值
        创建一个函数，可以使用return来设置函数的返回值
        语法：
             return 值
         return后的值将会作为函数的执行结果返回
         也可以自定义一个变量来接受该结果
         return后的语句不会执行
         */
        /*
        立即执行函数
         (function (){
                alert("我是一个立即执行函数");
            })();
         */

    </script>
</head>
<body>

</body>
</html>